# -*- coding: iso-8859-1 -*-
module TeXCheck

  class TeXFile
    def self.load(reader, texfile)
      fail unless reader.class == MemoryReader || reader.class == FileReader
      fail unless texfile.class == String

      # TODO

      # Note: this is a class method! (i.e. a static method in java)
      # It is invoked using "TeXFile.load(...)" and it must return
      # a TeXFile-object.
    end

    def lines
      # TODO

      # Must return the LaTeX document in linearized form
      # (an array of Line-objects)
    end
  end

  
  class Checker
    SINGLE_FILE = false

    def check(tex)
      fail unless tex.class == TeXFile

      # TODO

      # Checks the LaTeX file and returns an array of Error objects      
    end
  end

end
